The increasing power and flexibility of Internet Protocol (IP) devices has allowed a growing number of users to access various content items from those IP devices. Further, users may subscribe to a plurality of service providers providing several options for media content. When users wish to access content items from IP devices, a software client on the device typically makes a request to download the content item from a server where the content item resides. Content items are divided into segments of a standard time length when downloaded from a server. Before the content item can be provided on the requesting IP device, there is often a wait time as a buffer is built as segments are downloaded, which may be indicated to users by a circling icon, an hour glass, black screen, etc. This wait time varies depending on parameters such as: quality of the content item, screen size, download speed, etc.
Further, users are not limited to a single content item; users can switch from one content item to another. Typically, several sequential segments are downloaded into a cache before a requested content item is displayed. As is known in the industry, a segment is a portion of a content item of approximately ten seconds worth of playback. Typically, one segment is downloaded at a time and several segments may be cached. When users decide to switch to new content items, the cached segments of the original content item are discarded and segments of the newly requested content item are then cached before the newly requested content item is provided to the users, which requires users to wait as the cache is built. The waiting associated with switching content items leads to a frustrating viewing experience, particularly if the users frequently switch from one content item to another.
It is with respect to these and other considerations that aspects of the present disclosure will be made.